<!--
 * @Author: 李天惊 uf_lee@163.com
 * @Date: 2022-08-15 16:45:26
 * @LastEditors: 李天惊 uf_lee@163.com
 * @LastEditTime: 2023-01-02 11:02:52
 * @FilePath: \grazlink20\uc_sys\src\views\Asset\Quarantine\components\See.vue
 * Copyright (c) 2022 by 李天惊 uf_lee@163.com, All Rights Reserved. 
 * 检验检疫记录单-查看
-->
<script setup lang="ts">
import { ref, reactive } from 'vue'

import { ContentWrap } from '@/components/ContentWrap'
import { Descriptions } from '@/components/Descriptions'

import { ucIpOwnerSeeApi } from '@/api/cy/Guanxi'

import { useCache } from '@/hooks/web/useCache'
const { wsCache } = useCache()

/****************************** 变量 start ******************************/
const dict: any = wsCache.get('dict')
const data = ref<any>({})
const schema = reactive<DescriptionsSchema[]>([
  {
    field: 'province',
    label: '省份'
  },
  {
    field: 'city',
    label: '城市'
  },
  {
    field: 'admin_org_name',
    label: '系统管理组织'
  },
  {
    field: 'ahb_org_name',
    label: '畜牧局组织'
  },
  {
    field: 'admin_dept_name',
    label: '系统关系部门'
  },
  {
    field: 'ahb_dept_name',
    label: '畜牧局部门'
  },
  {
    field: 'admin_user_name',
    label: '系统管理人员'
  },
  {
    field: 'ahb_user_name',
    label: '畜牧局人员'
  }
])

/****************************** 变量 end ******************************/

/****************************** 组件参数 start ******************************/
// 获取参数
const props = defineProps({
  id: {
    type: String,
    default: null
  }
})
/****************************** 组件参数 end ******************************/

/****************************** 函数方法 start ******************************/
// 字典通过value获取label
const getDictLabel = (type, value) => {
  let data = dict[type].find((item) => {
    return item.value == value
  })
  return data ? data.label : ''
}

// 调用查看接口获取信息
const getQuarantineOrderSee = async () => {
  if (props.id) {
    const res = await ucIpOwnerSeeApi({ id: props.id })
      .catch(() => {})
      .finally(() => {})
    if (res) {
      data.value = res.data
    }
  } else {
    data.value.detailedData = []
    data.value.fileData = []
  }
}

/****************************** 函数方法 end ******************************/

/****************************** 初始化 start ******************************/
const init = async () => {
  // 调用查看接口查询数据
  await getQuarantineOrderSee()
}
init()
/****************************** 初始化 end ******************************/
</script>

<template>
  <ContentWrap title="主数据">
    <Descriptions :schema="schema" :data="data">
      <template #breed="{ row }: { row: any }">
        <div>{{ getDictLabel('breed', row.breed) }}</div>
      </template>
      <template #breed_sub="{ row }: { row: any }">
        <div>{{ getDictLabel('breed_sub', row.breed_sub) }}</div>
      </template>
      <template #type="{ row }: { row: any }">
        <div>{{ getDictLabel('quarantine_order_type', row.type) }}</div>
      </template>
      <template #state="{ row }: { row: any }">
        <div>{{ getDictLabel('quarantine_order_state', row.state) }}</div>
      </template>
    </Descriptions>
  </ContentWrap>
</template>
